package com.ruoyi.project.system.exam.domain;

import com.ruoyi.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 答题场次配置对象 dj_exam_session_config
 * 
 * @author ruoyi
 * @date 2023-07-16
 */
public class ExamSessionConfig extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 配置ID */
    private Long id;

    /** 配置名称（如"单人10题普通场""PK对战20题进阶场"） */
    private String configName;

    /** 题目数量 */
    private Integer questionCount;

    /** 题目分类ID（关联 dj_question_category.id，0为全部分类） */
    private Long categoryId;

    /** 难度筛选（0全部，1简单，2中等，3困难） */
    private Integer difficulty;

    /** 考试类型（1单人答题，2PK答题） */
    private Integer examType;

    /** 考试时长（秒） */
    private Integer examDuration;

    /** 状态（0禁用，1启用） */
    private Integer status;

    /** 删除标志（0正常 1删除） */
    private String delFlag;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setConfigName(String configName) 
    {
        this.configName = configName;
    }

    public String getConfigName() 
    {
        return configName;
    }
    public void setQuestionCount(Integer questionCount) 
    {
        this.questionCount = questionCount;
    }

    public Integer getQuestionCount() 
    {
        return questionCount;
    }
    public void setCategoryId(Long categoryId) 
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId() 
    {
        return categoryId;
    }
    public void setDifficulty(Integer difficulty) 
    {
        this.difficulty = difficulty;
    }

    public Integer getDifficulty() 
    {
        return difficulty;
    }
    public void setExamType(Integer examType) 
    {
        this.examType = examType;
    }

    public Integer getExamType() 
    {
        return examType;
    }
    
    public void setExamDuration(Integer examDuration)
    {
        this.examDuration = examDuration;
    }
    
    public Integer getExamDuration()
    {
        return examDuration;
    }
    
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("configName", getConfigName())
            .append("questionCount", getQuestionCount())
            .append("categoryId", getCategoryId())
            .append("difficulty", getDifficulty())
            .append("examType", getExamType())
            .append("examDuration", getExamDuration())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("delFlag", getDelFlag())
            .toString();
    }
}